package top.infopub.enums.mkt;

import org.apache.commons.lang3.StringUtils;

public enum ProjectFileTypeEnum {
    FILE_TYPE1("1", "1", "项目信息收集", "项目可研报告"),
    FILE_TYPE2("1", "2", "项目信息收集", "两评一案"),
    FILE_TYPE3("1", "3", "项目信息收集", "其他资料"),
    FILE_TYPE4("2", "4", "立项", "立项报告"),
    FILE_TYPE5("2", "5", "立项", "营销策划书（选填）"),
    FILE_TYPE6("2", "6", "立项", "项目物有所值评估"),
    FILE_TYPE7("2", "7", "立项", "项目财政承受可行性评估"),
    FILE_TYPE8("2", "8", "立项", "项目实施方案"),
    FILE_TYPE9("3", "9", "营销策划", "营销策划"),
    FILE_TYPE10("4", "10", "资格预审", "资审招标文件（选填）"),
    FILE_TYPE11("4", "11", "资格预审", "项目实施方案（选填）"),
    FILE_TYPE12("4", "12", "资格预审", "资质公告"),
    FILE_TYPE13("4", "13", "资格预审", "政府公示截图"),
    FILE_TYPE14("5", "14", "招标文件分析", "招标文件分析"),
    FILE_TYPE15("6", "15", "标书策划", "标书策划"),
    FILE_TYPE41("7", "41", "投标决策", "标前承诺"),
    FILE_TYPE42("7", "42", "投标决策", "居间合同"),
    FILE_TYPE16("7", "16", "投标决策", "运营调研报告（选填）"),
    FILE_TYPE17("7", "17", "投标决策", "招商调研报告（选填"),
    FILE_TYPE18("7", "18", "投标决策", "融资调研报告（选填）"),
    FILE_TYPE19("7", "19", "投标决策", "当地PPP项目调研报告（选填）"),
    FILE_TYPE20("7", "20", "投标决策", "招标文件（选填）"),
    FILE_TYPE21("7", "21", "投标决策", "PPP合同范本"),
    FILE_TYPE22("7", "22", "投标决策", "投资测算表"),
    FILE_TYPE23("8", "23", "投标保证金支付", "银行凭证"),
    FILE_TYPE24("9", "24", "标书评审", "资信投标文件"),
    FILE_TYPE25("9", "25", "标书评审", "商务投标文件"),
    FILE_TYPE26("9", "26", "标书评审", "技术投标文件"),
    FILE_TYPE27("10", "27", "开标结果", "中标公示截图"),
    FILE_TYPE28("11", "28", "标后总结", "点检表"),
    FILE_TYPE29("11", "29", "标后总结", "招标文件"),
    FILE_TYPE30("12", "30", "项目交底", "项目可行性研究报告"),
    FILE_TYPE31("12", "31", "项目交底", "经批复的实施方案（盖章版）"),
    FILE_TYPE32("12", "32", "项目交底", "实施方案批复文件"),
    FILE_TYPE33("12", "33", "项目交底", "两案批复"),
    FILE_TYPE34("12", "34", "项目交底", "商务谈判备忘录"),
    FILE_TYPE35("12", "35", "项目交底", "招标文件、合同模版"),
    FILE_TYPE36("12", "36", "项目交底", "项目投标测算资料"),
    FILE_TYPE37("12", "37", "项目交底", "中标通知书"),
    FILE_TYPE38("12", "38", "项目交底", "PPP项目合同"),
    FILE_TYPE39("13", "39", "投标补贴", "投标补贴"),
    FILE_TYPE40("14", "40", "营销奖励", "营销奖励计算分配明细"),
    FILE_TYPE43("15", "43", "项目跟踪", "跟踪附件"),
    FILE_TYPE44("16", "44", "投标保证金回收", "银行凭证"),
    FILE_TYPE45("17", "45", "融资初调", "融资初调"),
    FILE_TYPE46("18", "46", "融资尽调", "融资尽调"),
    FILE_TYPE47("19", "47", "融资金融机构批复", "融资金融机构批复"),
    FILE_TYPE48("20", "48", "借款合同", "借款合同"),
    FILE_TYPE49("21", "49", "保证合同", "保证合同"),
    FILE_TYPE50("22", "50", "质押合同", "质押合同"),
    FILE_TYPE51("23", "51", "抵押合同", "抵押合同"),
    FILE_TYPE52("24", "52", "合同评审", "合同评审"),
    FILE_TYPE53("25", "53", "融资方案", "融资方案"),
    FILE_TYPE54("26", "54", "融资放款", "融资放款"),
    FILE_TYPE55("27", "55", "融资还款", "融资还款"),
    FILE_TYPE56("28", "56", "融资付息", "融资付息"),
    FILE_TYPE57("29", "57", "融资付费", "融资付费"),
    FILE_TYPE58("30", "58", "收款登记", "收款凭证"),
    FILE_TYPE59("31", "59", "资金支付", "付款凭证"),
    FILE_TYPE60("32", "60", "资金上交", "付款凭证"),
    FILE_TYPE61("33", "61", "资金拨付", "财务凭证"),
    FILE_TYPE62("34", "62", "合同谈判", "合同谈判"),
    FILE_TYPE63("35", "63", "合同评审", "Word版合同文本"),
    FILE_TYPE64("35", "64", "合同评审", "PDF版合同文本"),
    FILE_TYPE65("35", "65", "合同评审", "盖章版合同文本"),
    FILE_TYPE66("35", "66", "合同评审", "其他附件"),
    FILE_TYPE67("36", "67", "承继协议评审", "Word版合同文本"),
    FILE_TYPE68("36", "68", "承继协议评审", "PDF版合同文本"),
    FILE_TYPE69("36", "69", "承继协议评审", "盖章版合同文本"),
    FILE_TYPE70("36", "70", "承继协议评审", "其他附件"),
    FILE_TYPE71("37", "71", "承继协议-补充协议", "Word版合同文本"),
    FILE_TYPE72("37", "72", "承继协议-补充协议", "PDF版合同文本"),
    FILE_TYPE73("37", "73", "承继协议-补充协议", "盖章版合同文本"),
    FILE_TYPE74("37", "74", "承继协议-补充协议", "其他附件"),
    FILE_TYPE75("38", "75", "总包合同备案", "Word版合同文本"),
    FILE_TYPE76("38", "76", "总包合同备案", "PDF版合同文本"),
    FILE_TYPE77("38", "77", "总包合同备案", "盖章版合同文本"),
    FILE_TYPE78("38", "78", "总包合同备案", "其他附件"),
    FILE_TYPE79("39", "79", "内部协议-合同评审", "Word版合同文本"),
    FILE_TYPE80("39", "80", "内部协议-合同评审", "PDF版合同文本"),
    FILE_TYPE81("39", "81", "内部协议-合同评审", "盖章版合同文本"),
    FILE_TYPE82("39", "82", "内部协议-合同评审", "其他附件"),
    FILE_TYPE83("40", "83", "内部协议-补充协议", "Word版合同文本"),
    FILE_TYPE84("40", "84", "内部协议-补充协议", "PDF版合同文本"),
    FILE_TYPE85("40", "85", "内部协议-补充协议", "盖章版合同文本"),
    FILE_TYPE86("40", "86", "内部协议-补充协议", "其他附件"),
    FILE_TYPE87("41", "87", "分包-合同评审", "Word版合同文本"),
    FILE_TYPE88("41", "88", "分包-合同评审", "PDF版合同文本"),
    FILE_TYPE89("41", "89", "分包-合同评审", "盖章版合同文本"),
    FILE_TYPE90("41", "90", "分包-合同评审", "其他附件"),
    FILE_TYPE91("42", "91", "分包-补充协议", "Word版合同文本"),
    FILE_TYPE92("42", "92", "分包-补充协议", "PDF版合同文本"),
    FILE_TYPE93("42", "93", "分包-补充协议", "盖章版合同文本"),
    FILE_TYPE94("42", "94", "分包-补充协议", "其他附件"),
    FILE_TYPE95("43", "95", "设备-合同评审", "Word版合同文本"),
    FILE_TYPE96("43", "96", "设备-合同评审", "PDF版合同文本"),
    FILE_TYPE97("43", "97", "设备-合同评审", "盖章版合同文本"),
    FILE_TYPE98("43", "98", "设备-合同评审", "其他附件"),
    FILE_TYPE99("44", "99", "设备-补充协议", "Word版合同文本"),
    FILE_TYPE100("44", "100", "设备-补充协议", "PDF版合同文本"),
    FILE_TYPE101("44", "101", "设备-补充协议", "盖章版合同文本"),
    FILE_TYPE102("44", "102", "设备-补充协议", "其他附件"),
    FILE_TYPE103("45", "103", "其他-合同评审", "Word版合同文本"),
    FILE_TYPE104("45", "104", "其他-合同评审", "PDF版合同文本"),
    FILE_TYPE105("45", "105", "其他-合同评审", "政府发函"),
    FILE_TYPE106("45", "106", "其他-合同评审", "其他附件"),
    FILE_TYPE107("46", "107", "其他-补充协议", "Word版合同文本"),
    FILE_TYPE108("46", "108", "其他-补充协议", "PDF版合同文本"),
    FILE_TYPE109("46", "109", "其他-补充协议", "政府发函"),
    FILE_TYPE110("46", "110", "其他-补充协议", "其他附件"),
    FILE_TYPE111("47", "111", "对外确权", "计算稿"),
    FILE_TYPE112("47", "112", "对外确权", "签字扫描件"),
    FILE_TYPE113("47", "113", "对外确权", "其他附件"),
    FILE_TYPE114("48", "114", "对内确权", "计算稿"),
    FILE_TYPE115("48", "115", "对内确权", "签字扫描件"),
    FILE_TYPE116("48", "116", "对内确权", "其他附件"),
    FILE_TYPE117("49", "117", "分包确权", "计算稿"),
    FILE_TYPE118("49", "118", "分包确权", "签字扫描件"),
    FILE_TYPE119("49", "119", "分包确权", "其他附件"),
    FILE_TYPE120("50", "120", "设备确权", "计算稿"),
    FILE_TYPE121("50", "121", "设备确权", "签字扫描件"),
    FILE_TYPE122("50", "122", "设备确权", "其他附件"),
    FILE_TYPE123("51", "123", "其他确权", "计算稿"),
    FILE_TYPE124("51", "124", "其他确权", "签字扫描件"),
    FILE_TYPE125("51", "125", "其他确权", "其他附件"),
    FILE_TYPE126("52", "126", "项目预结算", "计算稿"),
    FILE_TYPE127("52", "127", "项目预结算", "签字扫描件"),
    FILE_TYPE128("52", "128", "项目预结算", "其他附件"),
    FILE_TYPE129("53", "129", "对内结算", "计算稿"),
    FILE_TYPE130("53", "130", "对内结算", "签字扫描件"),
    FILE_TYPE131("53", "131", "对内结算", "其他附件"),
    FILE_TYPE132("54", "132", "商务策划", "商务策划"),
    FILE_TYPE133("54", "133", "商务策划", "主合同"),
    FILE_TYPE134("54", "134", "商务策划", "两评一案"),
    FILE_TYPE135("54", "135", "商务策划", "招标文件"),
    FILE_TYPE136("54", "136", "商务策划", "投标文件"),
    FILE_TYPE137("54", "137", "商务策划", "最新政策"),
    FILE_TYPE138("55", "138", "结算策划", "结算策划"),
    FILE_TYPE139("55", "139", "结算策划", "主合同"),
    FILE_TYPE140("55", "140", "结算策划", "其他"),
    FILE_TYPE141("56", "141", "概算分批", "概算计算稿"),
    FILE_TYPE142("57", "142", "小微评审", "小微责任状"),
    FILE_TYPE143("58", "143", "小微激励兑现", "小微责任状"),
    FILE_TYPE144("59", "144", "商务成本支付", "计算稿"),
    FILE_TYPE145("59", "145", "商务成本支付", "签字扫描件"),
    FILE_TYPE146("59", "146", "商务成本支付", "其他附件"),
    FILE_TYPE147("60", "147", "扣款记录", "计算稿"),
    FILE_TYPE148("60", "148", "扣款记录", "签字扫描件"),
    FILE_TYPE149("60", "149", "扣款记录", "其他附件"),
    FILE_TYPE150("61", "150", "年度创效计划", "年度创效计划"),
    FILE_TYPE151("62", "151", "月度创效计划", "设计优化"),
    FILE_TYPE152("62", "152", "月度创效计划", "前期费用优化"),
    FILE_TYPE153("62", "153", "月度创效计划", "认质认价"),
    FILE_TYPE154("62", "154", "月度创效计划", "人才机调差"),
    FILE_TYPE155("62", "155", "月度创效计划", "签证变更"),
    FILE_TYPE156("62", "156", "月度创效计划", "招标差价"),
    FILE_TYPE157("62", "157", "月度创效计划", "其他二三次经营"),
    FILE_TYPE158("63", "158", "周创效确认", "设计优化"),
    FILE_TYPE159("63", "159", "周创效确认", "前期费用优化"),
    FILE_TYPE160("63", "160", "周创效确认", "认质认价"),
    FILE_TYPE161("63", "161", "周创效确认", "人才机调差"),
    FILE_TYPE162("63", "162", "周创效确认", "签证变更"),
    FILE_TYPE163("63", "163", "周创效确认", "招标差价"),
    FILE_TYPE164("63", "164", "周创效确认", "其他二三次经营"),
    FILE_TYPE165("64", "165", "创效激励兑现", "创效激励兑现"),
    ;

    private String code;

    private String subCode;

    private String name;

    private String subName;

    ProjectFileTypeEnum(String code, String subCode, String name, String subName) {
        this.code = code;
        this.subCode = subCode;
        this.name = name;
        this.subName = subName;
    }

    public static ProjectFileTypeEnum getBySubCode(String subCode) {
        if (StringUtils.isBlank(subCode)) return null;
        for (ProjectFileTypeEnum pft : ProjectFileTypeEnum.values()) {
            if (StringUtils.equals(subCode, pft.getSubCode())) {
                return pft;
            }
        }
        return null;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSubCode() {
        return subCode;
    }

    public void setSubCode(String subCode) {
        this.subCode = subCode;
    }

    public String getSubName() {
        return subName;
    }

    public void setSubName(String subName) {
        this.subName = subName;
    }
}
